package com.linx.system.domain.bo;

import com.linx.common.core.validate.AddGroup;
import com.linx.common.core.validate.EditGroup;
import com.linx.system.domain.AppMenu;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

/**
 * 移动端应用菜单业务对象 app_menu
 *
 * @author linx
 * @date 2024-12-24
 */
@Data
@AutoMapper(target = AppMenu.class, reverseConvertGenerate = false)
public class AppMenuBo {

    /**
     *
     */
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long appMenuId;

    /**
     * 服务key
     */
    @NotBlank(message = "服务key不能为空", groups = { AddGroup.class, EditGroup.class })
    private String serviceKey;

    /**
     * 服务名称
     */
    @NotBlank(message = "服务名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String serviceName;

    /**
     * 备注
     */
    private String remark;

    /**
     * 图标id
     */
    @NotNull(message = "图标id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long appMenuOssId;

    /**
     * 菜单类型id
     */
    private Long appMenuTypeId;
    /**
     * 外部链接类型（1，第三方应用，2链接）
     */
    private String appMenuLinkType;

    /**
     * 是否跳转(0,是，1否)
     */
    private String appMenuLinkFlag;
    /**
     * 跳转地址
     */
    private String appMenuLinkUrl;
}
